Functional BIP: Embedding connectors in functional programming languages
نویسندگان
چکیده
This paper presents a theoretical foundation for functional language implementations of BehaviourInteraction-Priority (BIP). We introduce a set of connector combinators describing synchronisation, data transfer, priorities and dynamicity in a principled way. A static type system ensures the soundness of connector semantics. Based on this foundation, we implemented BIP as an embedded domain specific language (DSL) in Haskell and Scala. The DSL embedding allows programmers to benefit from the full expressive power of high-level languages. The clear separation of behaviour and coordination inherited from BIP leads to systems that are arguably simpler to maintain and reason about, compared to other approaches.
منابع مشابه
Xcd - Modular, Realizable Software Architectures
Connector-Centric Design (XCD) is centred around a new formal architectural description language, focusing mainly on complex connectors. Inspired by Wright and BIP, XCD aims to cleanly separate in a modular manner the high-level functional, interaction, and control system behaviours. This can aid in both increasing the understandability of architectural specifications and the reusability of com...
متن کاملEmbedding a Hardware Description Language in a Functional Meta-Programming Language
General purpose functional languages such as Haskell, have been widely used as host languages for the embedding of domain specific languages. In particular, various hardware description languages have been successfully embedded in Haskell and other functional languages. More recently, meta-programming languages have also started being used for the embedding of such languages, where the meta-lan...
متن کاملConnector Algebras, Petri Nets, and BIP
In the area of component-based software architectures, the term connector has been coined to denote an entity (e.g. the communication network, middleware or infrastructure) that regulate the interaction of independent components. Hence, a rigorous mathematical foundation for connectors is crucial for the study of coordinated systems. In recent years, many different mathematical frameworks have ...
متن کاملSymbolic Implementation of Connectors in BIP
BIP is a component framework for constructing systems by superposing three layers of modeling: Behavior, Interaction, and Priority. Behavior is represented by labeled transition systems communicating through ports. Interactions are sets of ports. A synchronization between components is possible through the interactions specified by a set of connectors. When several interactions are possible, pr...
متن کاملExtended Connectors: Structuring Glue Operators in BIP
Based on a variation of the BIP operational semantics using the offer predicate introduced in our previous work, we extend the algebras used to model glue operators in BIP to encompass priorities. This extension uses the Algebra of Causal Interaction Trees, T (P), as a pivot: existing transformations automatically provide the extensions for the Algebra of Connectors. We then extend the axiomati...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- J. Log. Algebr. Meth. Program.
دوره 92 شماره
صفحات -
تاریخ انتشار 2017